This week in Flutter #33: The new versions of Dart and Flutter are available
Dart 2.15 has been announced, and OMG they are improving enums:
enum MyEnum {
one, two, three
}
...
print(MyEnum.one.name); // Prints "one".
print(MyEnum.values.byName('two') == MyEnum.two); // Prints "true".
Maybe we will get Swift-like super enums one day.
And you have no idea how many times I declared a List
with the 2.15 syntax, and it did not work:
var y = List; // Already supported.
var z = List<int>; // New in 2.15.
var z = typeOf<List<int>>(); // Pre-2.15 workaround.
Flutter 2.8 has also been announced, but my favourite news is the new Firebase UI widgets. Especially the FirestoreDataTable is going to save me so much time.
- Michele Volpato
Development ๐งโ๐ป
๐ Flutter Tutorial: Stopwatch App with Custom UI and Animations ๐ฆ
In this video by Andrea Bizzotto, you’ll learn how to create a custom stopwatch. This is a lesson from his course on Flutter Animations Masterclass.
Note: I followed the course, I paid full price for it and I do not get a commission for advertising it. It’s that good.
๐ Learn Bloc in Flutter ๐ฆ
[Vandad Nahavandipoor](https://www.youtube.com/channel/UC8NpGP0AOQ0kX9ZRcohiPeQ) is very active on LinkedIn sharing tips about Flutter and Dart, and other frameworks and programming languages. The goal of this streamed event was to teach how BLoC works in Flutter, answering questions from the participants. I like the content Vandad share, I think the main reason is that Vandad is a real senior developer who also creates content, not the other way around.
๐ How to Parse Large JSON Data with Isolates in Dart 2.15
Another article by Andrea Bizzotto. In Dart 2.15 isolates, pieces of code that run independently from one another, have been improved. Andrea promptly published an article where you’ll learn how to take advantage of these improvements while parsing JSON data.
Backend ๐
๐ How to Build a Simple CRUD Application Using Flutter and Strapi
Strapi is an open-source headless CMS. In this article, you’ll learn how to integrate your Flutter app with an existing Strapi instance. This is a specific case, but if you are adding an app to your portfolio that integrates with an existing backend that already uses Strapi, then this might be helpful.
Tools ๐
๐ How to automate localization for Flutter apps
In this article, the GitLab team shows how to use webhooks and Localizely to automate the localization process for a Flutter app. There are not many technicalities in the article: it just gives you an idea of how to make it simpler to integrate Flutter and Localizely using GitLab.
Others ๐คทโโ๏ธ
๐ A simple, fast and lightweight Flutter dev environment on Manjaro
In my to-do list, there is an item I am going to address as soon as I have some free time: “Get a Linux machine to try Flutter on Linux”. I saved this article by Leandro Carvalho to get started with it.
๐ Freezed (Package of the Week) ๐ฆ
In this episode of Widget of the Week, Craig Labenz talks about Freezed, a Dart package that uses code generation to make your codebase more robust and readable.
๐ Foldable layouts in Flutter ๐ฆ
Andrei Tudor Diaconu, from Microsoft, presented at droidcon how to handle layout in Flutter when you have a foldable device, like the Surface Duo. In the video, Andrew Fitz Gibbon from the Flutter team also makes an appearance.
๐ Widgets vs helper methods | Decoding Flutter ๐ฆ
Did you also argue with your colleague about whether it is better to move a subtree from the build
method to a helper method, or to a new widget? Craig Labenz gives the final answer in this video of the series “Decoding Flutter”. It’s the new widget approach. But he also points out that if you use helper methods, it is still fine, you might just experience unnecessary rebuilds. Do not use too many helper methods.
That’s it for this week.
If you want to comment on any of this week’s entries, you can do it in the comment section below.
Have a bug-free week,
- Michele Volpato
Leave a comment